<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        let studentsData = [
            ["001", "李四", "男"],
            ["002", "张三", "男"],
            ["003", "王五", "女"],
            ["004", "张华", "女"],
        ]

        start();
        function start() {
            alert('欢迎进入学生信息管理系统！');
            while (true) {
                const option = prompt('请选择操作：1.查询  2.修改  3.删除  4.添加  5. 退出');
                switch (option) {
                    case "1":
                        query();
                        break;
                    case "2":
                        update();
                        break;
                    case "3":
                        remove();
                        break;
                    case "4":
                        add();
                        break;
                    case '5':
                        alert('再见！');
                        return;
                    default:
                        alert('输入有误，请重新输入。');
                        break;
                }
            }
        }

        // 查询学生
        function query() {
            const type = prompt('请选择查询类型：1.编号 2.姓名 3.性别') - 1;  // 1
            const value = prompt('请输入查询内容'); // 001
            const queryData = studentsData.filter((item, index) => {
                // 精确查询
                // return item[type] == value

                // 模糊查询
                return item[type].includes(value);
            })
            console.log(queryData);
        }

        function add() {
            const id = prompt('请输入学生编号:');
            const findId = studentsData.filter((item) => {
                return item[0] == id;
            })
            if (findId.length > 0) {
                alert('当前编号已存在，请重新输入。');
                add();
                return;
            }
            const name = prompt('请输入学生姓名:');
            const gender = prompt('请输入学生性别:');
            studentsData.push([id, name, gender]);
            alert('新增成功！');
        }

        function remove() {
            const type = prompt('请选择删除类型：1.编号 2.姓名 3.性别') - 1;
            const value = prompt('请输入要删除的内容');

            studentsData = studentsData.filter((item) => {
                // 条件：找出不需要删除的数据
                return item[type] !== value
            })

            // for (let i = 0; i < studentsData.length; i++) {
            //     if (studentsData[i][type] == value) {
            //         studentsData.splice(index, 1);
            //         i--;
            //     }
            // }

            console.log(studentsData);
        }

        function update() {
            const id = prompt('请输入要修改的学生编号');
            const studentItem = studentsData.find((item, index) => {
                return item[0] == id
            });
            if (!studentItem) {
                alert('该学生不存在！请重新输入。');
                update();
                return;
            }

            const type = prompt('请选择要修改的类型：1.姓名  2.性别') - 0; // 1
            const value = prompt('请输入修改的内容：');
            studentItem[type] = value;
            alert('修改成功');
        }



    </script>
</body>

</html>